#ifndef EVENT_H
#define EVENT_H

#include "room_global.h"
#include <boost/noncopyable.hpp>

class Event :
        protected boost::noncopyable
{
public:
    enum Type
    {
        ET_INVALID = 0,
        ET_NET_READCOMPLETE = 1,
        ET_NET_WRITECOMPLETE = 2,
        ET_NET_CONNECT = 3,
        ET_NET_DISCONNECT = 4,
        ET_NET_SVRSTOPPED = 5,
        ET_TIMER = 6,
        ET_DB_CHECKPLAYERTOKEN = 7,
        ET_DB_QUERYPLAYERDATA = 8

    };

public:
    Event(Type type);
    virtual ~Event();

    Type type() const;

private:
    Type m_type;
};

#endif // EVENT_H
